#pragma once

#include "XString.h"

namespace platform {

class FileSystem
{
public:
	FileSystem(void) {}
	virtual ~FileSystem(void) {}

	class SizeLimit {
	public:
		enum SizeLimitTypes {
			SLT_FREE_PERCENT,
			SLT_FREE_SIZE_MB
		};

		inline SizeLimit(const XString &location, SizeLimitTypes type, unsigned long value)
			: m_location(location), m_type(type), m_value(value)
		{}

		bool isOverLimit(void);

	private:
		XString m_location;
		SizeLimitTypes m_type;
		unsigned long m_value;
	};
};

}  // end namespace

